#include<iostream>
#include"UdpServer.hpp"
#include<memory>

std::string defaulthandler(const std::string& message)
{
    std::string hello="hello,";
    hello+=message;
    return hello;
}

//启动服务器
// ./udpserver 127.0.0.1 8888
int main(int argc, char* argv[])
{
    //if(argc!=3)
    if(argc!=2)
    {
        //如果我们的命令行参数的个数不足3个的话，那么我们就得提醒下用户输入ip和端口
        std::cerr<<"Usage: "<<argv[0]<<"port"<<std::endl;
        return 1;
    }
    //string ip=argv[1];//ip信息
    uint16_t port=std::stoi(argv[1]);//将字符串转换为整数---端口信息

    Enable_Console_Log_Strategy(); // 开启控制台日志策略
    //构建一个服务器
    //将回调函数传进去
    std::unique_ptr<UdpServer> usvr=std::make_unique<UdpServer>(port,defaulthandler);//创建服务器的时候将ip和端口传过去
    usvr->Init();//服务器初始化
    usvr->Start();//服务器启动
    return 0;
} 